package com.jeecms.pay.api;

import com.jeecms.pay.core.PayServiceInvoker;
import com.jeecms.pay.model.PayBasePara;
import com.jeecms.pay.model.PayContext;
import com.jeecms.pay.model.PayLog;
import com.jeecms.pay.model.PayPara;
import com.jeecms.pay.model.PayResult;

/**
 * 用于集成的充值服务接口<br>
 * 1)从客户端接收充值请求<br>
 * 2)根据客户端的请求完成与第三方的充值业务<br>
 * 3)处理第三方的返回值<br>
 * 4)如果有需要，还将充值到游戏<br>
 * 5)在充值过程中，记录充值日志<br>
 * 
 * @author web
 * 
 */
public class PayService {

	public static PayResult pay(PayBasePara payBasePara, PayPara payPara) {
		PayContext context = new PayContext(payBasePara, new PayResult());
		context.setPayInputPara(payPara);
		PayServiceInvoker.invoke(context);
		PayResult result = (PayResult) context.getResult();
		PayLog.logger.info("result:{}", result.toString());
		return result;
	}

	private PayService() {

	}
}
